using Rdl;

namespace GTame.ReportParser
{

    public class DataPointType
    {

        private GTame.ReportParser.ActionType _Action;
        private string _DataElementName;
        private Rdl.DataPointTypeDataElementOutput _DataElementOutput;
        private GTame.ReportParser.DataLabelType _DataLabel;
        private GTame.ReportParser.DataValuesType _DataValues;
        private GTame.ReportParser.MarkerType _Marker;
        private GTame.ReportParser.StyleType _Style;

        public GTame.ReportParser.ActionType Action
        {
            get
            {
                if (_Action == null)
                    _Action = new GTame.ReportParser.ActionType();
                return _Action;
            }
            set
            {
                _Action = value;
            }
        }

        public string DataElementName
        {
            get
            {
                return _DataElementName;
            }
            set
            {
                _DataElementName = value;
            }
        }

        public Rdl.DataPointTypeDataElementOutput DataElementOutput
        {
            get
            {
                return _DataElementOutput;
            }
            set
            {
                _DataElementOutput = value;
            }
        }

        public GTame.ReportParser.DataLabelType DataLabel
        {
            get
            {
                if (_DataLabel == null)
                    _DataLabel = new GTame.ReportParser.DataLabelType();
                return _DataLabel;
            }
            set
            {
                _DataLabel = value;
            }
        }

        public GTame.ReportParser.DataValuesType DataValues
        {
            get
            {
                if (_DataValues == null)
                    _DataValues = new GTame.ReportParser.DataValuesType();
                return _DataValues;
            }
            set
            {
                _DataValues = value;
            }
        }

        public GTame.ReportParser.MarkerType Marker
        {
            get
            {
                if (_Marker == null)
                    _Marker = new GTame.ReportParser.MarkerType();
                return _Marker;
            }
            set
            {
                _Marker = value;
            }
        }

        public GTame.ReportParser.StyleType Style
        {
            get
            {
                if (_Style == null)
                    _Style = new GTame.ReportParser.StyleType();
                return _Style;
            }
            set
            {
                _Style = value;
            }
        }

        public DataPointType()
        {
        }

        public Rdl.DataPointType Write()
        {
            // trial
            return null;
        }

    } // class DataPointType

}

